home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / program / nrpas13.zip / FGAUSS.PAS < prev    next >
Pascal/Delphi Source File  |  1991-04-29  |  566b  |  23 lines

  1. PROCEDURE fgauss(x: real; a: glnparam; VAR y: real;
  2.        VAR dyda: glnparam; na: integer);
  3. (* Programs using routine FGAUSS must define the type
  4. TYPE
  5.    glnparam = ARRAY [1..na] OF real;
  6. in the main routine.   *)
  7. VAR
  8.    i,ii: integer;
  9.    fac,ex,arg: real;
  10. BEGIN
  11.    y := 0.0;
  12.    FOR ii := 1 TO (na DIV 3) DO BEGIN
  13.       i := 3*ii-2;
  14.       arg := (x-a[i+1])/a[i+2];
  15.       ex := exp(-sqr(arg));
  16.       fac := a[i]*ex*2.0*arg;
  17.       y := y+a[i]*ex;
  18.       dyda[i] := ex;
  19.       dyda[i+1] := fac/a[i+2];
  20.       dyda[i+2] := fac*arg/a[i+2]
  21.    END
  22. END;
  23.